Virtual network connectivity for devices in wireless LAN networks

ABSTRACT

An access point in a wireless network is connected to wireless devices. When any of the devices becomes inaccessible, the device sends a notification to the access point to indicate the inaccessibility. The access point then receives and stores incoming messages that are destined for the device. The access point forwards the messages to the device when the device is ready to receive the message.

BACKGROUND

[0001] Wireless Local Area Networks (LAN) have become a popularalternative to wired LANs, especially at locations where wiring isdifficult or costly. For example, a warehouse or a hospital that was notbuilt to include a wiring infrastructure for the LAN may have greatdifficulties to accommodate a wired network. The cost for adding thewiring infrastructure into such a building may be prohibitively higherthan deploying a wireless LAN.

[0002] Stations or devices in a wireless LAN may communicate with eachother directly over wireless channels, or indirectly through a wirelessAccess Point (AP). A wireless AP may act as a hub to provideconnectivity for the devices associated with the AP, or may serve as abridge to connect a wireless LAN to a variety of wired networks, e.g.,Ethernet and Token Ring networks. A number of wireless APs may beinterconnected to provide an extensive coverage area for a wireless LAN.

[0003] There are several approaches to implementing an AP. An AP may beimplemented as an embedded hardware product, or as a software productthat may be run on a general-purpose computer. The APs that areimplemented in software may be called soft APs.

[0004] One widely-accepted industry standard for wireless LANs is theIEEE 802.11 standard published in 1997. The IEEE 802.11 standardspecifies that a device in a wireless LAN enter a power-saving stateafter being inactive for a pre-determined period of time. The device mayperiodically wake up from the power-saving state to receive beaconsignals from the AP with which the device is associated. The beaconsignals may indicate whether there are messages waiting for the deviceat the AP.

BRIEF DESCRIPTION OF THE DRAWINGS

[0005]FIG. 1 illustrates an embodiment of a system including an APaccording to the present disclosure; and

[0006]FIG. 2 illustrates a flow diagram of a message-managing processcarried out by the AP.

DETAILED DESCRIPTION

[0007]FIG. 1 shows an embodiment of a wireless LAN 110 includingwireless devices 11, 12, and 13, that may be connected to a computer 16on which a wireless AP 19 is installed. In this embodiment, the AP 19may be implemented as a soft AP that resides on a computer-readablemedium 17 accessible by the computer 16. Alternatively, the AP 19 may beimplemented as an embedded hardware device. The devices 11, 12, and 13may be computers or mobile stations with wireless LAN cards, and maycommunicate with each other through the AP 19 over wireless channels.

[0008] The wireless network 110 may be connected to a wired network 140through the AP 19. The AP 19, in this embodiment, serves as a bridgebetween the two networks 110 and 140, performing appropriate address andformat translations. Although only one device 14 is shown in the wirednetwork 140, a plurality of devices may be included in the wired network140, connecting to a hub 15. Through the AP 19 and the hub 15, thedevices 11, 12, and 13 may communicate with any of the devices in thewired network 140.

[0009] When the AP 19 receives a message destined for a device in thewireless LAN 110, e.g., the device 11, the AP 19 may send a beaconsignal notifying the device 11 of the incoming message. If the device 11is accessible and ready to receive the message, the AP 19 forwards themessage to the device 11. Otherwise, the AP 19 may hold the messageuntil the device 11 is ready to receive the message.

[0010] If the device 11 temporarily leaves the wireless network 110, theAP 19 may hold the messages addressed to the device 11, therebymaintaining a virtual connectivity for the device 11. This may happen,for example, when the device 11 goes into an inactive mode, e.g., apower down mode or a hibernate mode, or when the device 11 roams beyondthe communication range of the AP 19. Before the device 11 leaves thenetwork 110, the device 11 may notify the AP 19 of the inaccessibility.Once the AP 19 receives this notification, the AP holds all the incomingmessages addressed to the device 11 until the device 11 becomesaccessible and ready to receive messages again, although the scope ofthe invention is not limited in this respect.

[0011] If the device 11 leaves the wireless network 110 due to a suddenloss of connection to the AP 19, the device 11 may not be able to notifythe AP 19 prior to losing the connection. In this scenario, when the APreceives a message addressed to the device 11, the AP 19 may attempt todeliver the message by querying whether the device 11 is ready toreceive messages. The AP 19 waits for a pre-determined period of timebut no response from the device 11 is detected. The AP 19 may thendetermine that the device 11 has become inaccessible and start holdingmessages for the device 11.

[0012] When the device 11 is inaccessible, the incoming messages boundfor the device may be held in storage media 18, e.g., memory or harddisks, which is accessible by the AP 19. The storage media 18 may residelocally in computer 16, as shown in FIG. 1, or reside in a remotelocation. The size of the storage media 18 allocated to store themessages can be determined based on the following factors including, butnot limited to, the number of devices connected to the wireless LAN 110,and the duration of time for which the AP 19 holds the messages. Toavoid these messages from overflowing the allocated space, the AP 19 maydiscard some of the messages, such as the messages that have stayed inthe storage media 18 longer than an age limit, to make room for the morerecent messages.

[0013] After the device 11 returns to the wireless network 110, thedevice 11 sends an “I am back” message to the AP 19 to indicate theaccessibility. The AP 19 then sends a beacon signal to determine whetherthe device 11 is ready to receive messages. If the device 11 is ready,the AP 19 forwards all the messages addressed to the device 11 that areheld in the storage media 18 to the device 11. Otherwise, the AP 19continues to hold the messages until the device 11 is ready or the agelimit for holding the messages is exceeded.

[0014] It the AP 19 is implemented as a soft AP, the capacity of the AP19 for holding messages may be increased without significant increase incost. For example, the capacity can be increased by adding more harddisks to the computer 16.

[0015] In contrast to the standard specified by the IEEE 802.11, thedevice 11 is not required to wake up periodically to receive beaconsignals from the AP 19. Rather, the device 11 only sends a signal to theAP 19 before it goes off-line, and sends another signal to the AP 19after the device become accessible again. This allows the device 11 tosave a significant amount of power compared to a device implementing theIEEE 802.11 standard.

[0016]FIG. 2 illustrates a message-managing process 20 carried out bythe AP 19. The process 200 determines when to hold a message for anassociated device and when to forward the message to the device. Theprocess 200 begins at a start state 201. Proceeding to state 205, the AP19 receives a message. The message includes an address field, which hasa destination address indicating to which device the message should beforwarded. Proceeding to state 210, the AP 19 determines which device tosend the message based on the destination address. Here, assume themessage is addressed to the device 11.

[0017] Proceeding to state 215, the AP 19 determines if the device 11 isaccessible. The AP 19 keeps status information for the associateddevices in a memory location. Once the AP 19 detects, or is notified of,a device's inaccessible status, the AP 19 stores the status informationin the memory location until the device 11 notifies the AP 19 of achange of status. If the device 11 is accessible, the process 200proceeds along the YES branch to state 220 to further determine if thedevice 11 is ready to receive messages. If the device 11 is notaccessible, the process 200 proceeds along the NO branch to state 240 tobuffer the message to the storage media 18.

[0018] In state 220, if the device 11 is ready to receive messages, theprocess 200 proceeds along the YES branch to state 230 to stream themessage to the device 11. If the device 11 is not ready to receive anymessages, the process 200 proceeds along the NO branch to state 240 tobuffer the message to the storage media 18.

[0019] After the AP 19 buffers the message to the storage media 18, theprocess 200 proceeds to state 250. In state 250, the AP 19 determines ifany message in the storage media 18 has passed the age limit for holdingthe messages. If the AP 19 finds a message that has passed the agelimit, the process 200 proceeds along the YES branch to state 260. Themessage is discarded from the storage media 18, and the process 200returns to state 210. If the AP 19 does not find a message that haspassed the age limit, the process 200 proceeds along the NO branch backto state 210. The AP 19 then continues to process the next receivedmessage.

[0020] The process 200 may be used for devices that typically do notroam between different APs, but remain associated with a single AP. Bycarrying out the process 200, the AP 19 enables a virtual connectivityfor devices associated with the AP 19 by forwarding and holding messagesfor the devices at appropriate times. Thus, the devices can be turnedoff for a prolonged time period without losing connectivity to otherdevices in the network. This allows power-limited devices, e.g.,cellular phones or Personal Digital Assistants (PDAs), to preservebattery power.

[0021] Devices that are less limited by battery power, e.g., in-homedevices, can also benefit from the present disclosure. For example, adevice may not wish to be interrupted while engaging in a computingtask. During the time when the device is busy, the AP 19 may treat thedevice as inaccessible. The AP 19 may hold the messages addressed to thedevice until the device completes the tasks. The AP 19 may then forwardthe messages in a batch to the device.

[0022] Other embodiments are within the scope of the following claims.

1. A method comprising: receiving a message addressed to a device on anetwork; determining if the device is accessible; storing the message instorage media if the device is not accessible; and forwarding themessage to the device after the device becomes accessible.
 2. The methodof claim 1 further comprising receiving a signal from the device, thesignal indicating that the device has become accessible.
 3. The methodof claim 2 further comprising, after receiving the signal, sending abeacon to the device to determine whether the device is ready to receivethe message.
 4. The method of claim 1 further comprising receiving anotification from the device, the notification indicating that thedevice has become inaccessible.
 5. The method of claim 1 wherein thenetwork is a wireless network.
 6. The method of claim 1 furthercomprising: discarding the message if the message has been stored in thestorage media longer than an age limit.
 7. The method of claim 1 furthercomprising receiving, storing, and forwarding multiple messages.
 8. Asystem comprising: storage media; an access point that is coupled to aplurality of devices, the access point being adapted to: determine ifany of the devices is inaccessible; and buffer messages intended for theinaccessible device to the storage media; and a network to connect theaccess point to the plurality of devices.
 9. The system as in claim 8,wherein the access point is a software application executable by acomputer.
 10. The system as in claim 8, wherein the network is awireless network.
 11. The system as in claim 8, wherein the device sendsa signal to the access point when the device has become accessible. 12.The system as in claim 11, wherein the access point, after receiving thesignal, sends a beacon to the device to determine whether the device isready to receive the messages.
 13. The system as in claim 12, whereinthe access point forwards the messages to the device if the device isready to receive the messages.
 14. The system as in claim 8, wherein thedevice sends a notification to the access point before the devicebecomes inaccessible.
 15. The system as in claim 8 further comprising amemory location accessible by the access point, the memory locationkeeping a status of accessibility for each of the plurality of devices.16. The system as in claim 8, wherein the size of the storage mediaallocated to the access point is adjustable based on the number ofdevices connected to the access point.
 17. The system as in claim 8,wherein the size of the storage media allocated to the access point isadjustable based on a time period for which the access point holds themessages.
 18. The system as in claim 17, wherein the access pointdiscards a buffered message if the buffered message has been stored inthe storage media longer than the time period.
 19. A computer programproduct residing on a computer-readable medium comprising instructionsfor causing the computer to: receive a message addressed to a device ona network; determine if the device is accessible; store the message instorage media if the device is not accessible; and forward the messageto the device after the device becomes accessible.
 20. The computerprogram product of claim 19 further comprising instructions for causingthe computer to receive a signal from the device, the signal indicatingthat the device has become accessible.
 21. The computer program productof claim 20 further comprising instructions for causing the computer tosend a beacon to the device, after receiving the signal, to determinewhether the device is ready to receive the message.
 22. The computerprogram product of claim 19 further comprising instructions for causingthe computer to receive a notification from the device, the notificationindicating that the device has become inaccessible.
 23. The computerprogram product of claim 19 further comprising instructions for causingthe computer to discard the message if the message has been stored inthe storage media longer than an age limit.
 24. A method comprising:determining that a device on a network is not accessible by an accesspoint; buffering messages intended for the device in a storage mediaaccessible by the access point.
 25. The method of claim 24 wherein thenetwork is a wireless network.
 26. The method of claim 24 furthercomprising transmitting the buffered messages after the device becomesaccessible.
 27. The method of claim 24 further comprising discarding abuffered message if the buffered message has been stored in the storagemedia longer than an age limit.